#ifndef MODEL_H
#define MODEL_H

#include "MbMatrix.h"

class Alignment;
class MbRandom;
class Settings;
class Tree;
class Model {

	public:
                            Model(Alignment *ap, MbRandom *rp, Settings *sp);
							~Model(void);
				   double   calculateLikelihood(void);

	private:
				Alignment   *alignmentPtr;
				 MbRandom   *ranPtr;
				 Settings   *settingsPtr;
					 Tree   *tree;
					  int   numNodes;
				   double   *cls;
				   double   ***clsPtr;
		 MbMatrix<double>   *P;

};


#endif

